package com.lemon.components.wechart;

import com.lemon.components.wechart.order.user.RefreshUserTokenOrder;
import com.lemon.components.wechart.order.user.UserAccessTokenOrder;
import com.lemon.components.wechart.order.user.UserCodeOrder;
import com.lemon.components.wechart.order.user.UserInfoOrder;
import com.lemon.components.wechart.result.user.RefreshUserTokenResult;
import com.lemon.components.wechart.result.user.UserAccessTokenResult;
import com.lemon.components.wechart.result.user.UserInfoResult;
import com.lemon.components.wechart.result.user.WechartToken;

public interface WechartUserService {
	/**
	 * 通过appid和appsecret，获取微信token
	 * 每日限次数2000次
	 * @param appid exp:wxd7c999686574d0b9
	 * @param appsecret exp:5e7fecd478c066b286c803d91ac23b8e
	 * @return WechartToken对象
	 */
	public WechartToken getToken(String appid, String appsecret);

	public String getUserCodeUrl(UserCodeOrder userCodeOrder);

	UserAccessTokenResult getUserAccessToken(UserAccessTokenOrder userAccessTokenOrder);

	RefreshUserTokenResult refreshUserToken(RefreshUserTokenOrder refreshUserTokenOrder);

	UserInfoResult getUserInfo(UserInfoOrder userInfoOrder);

}